package br.com.linkin.web.mi.validation;

/**
 * Classe que reune comportamentos comuns para todas as classes de validação
 *
 * @author daniel.mendonca
 */
public class BaseValidation {
    
    /**
     * Construtor BaseValidation
     * 
     */
    public BaseValidation() {
        
    }
    
    /**
     * Método que verifica se uma String é nula ou vazia
     *
     * @param valueString
     * @return boolean
     */
    public static boolean isInvalid(String valueString) {
        return ((valueString == null) || (valueString.trim().length() == 0));
    }

    /**
     * Método que verifica se um objeto Long é nulo ou possui o valor 0L
     *
     * @param valueLong
     * @return
     */
    public static boolean isInvalid(Long valueLong) {
        return ((valueLong == null) || (valueLong.equals(0L)));
    }

    /**
     * Método que verifica se um objeto Double é nulo ou possui o valor 0D
     *
     * @param valueDouble
     * @return
     */
    public static boolean isInvalid(Double valueDouble) {
        return ((valueDouble == null) || (valueDouble.equals(0D)));
    }

    /**
     * Método que verifica se um objeto possui o valor Nulo
     *
     * @param object
     * @return
     */
    public static boolean isInvalid(Object object) {
        return (object == null);
    }

    /**
     * Método que verifica se um objeto Integer é nulo ou possui o valor 0
     *
     * @param valueInteger
     * @return
     */
    public static boolean isInvalid(Integer valueInteger) {
        return ((valueInteger == null) || (valueInteger == 0));
    }
    
    
}
